home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-12-18 | 11.8 KB | 261 lines | [TEXT/ttxt] |
- Release Notes for MacHTTP 2.0
- This file (and part 2) summarize all of the changes made to MacHTTP since version
- 1.3 was released. It is in reverse chronological order. It's worth reading
- through as there may be some tidbits of info here that failed to make it to the
- formal documentation.
-
- Version 2.0fc4b additions
- -----------------------
- + Fixed a bug introduced in 2.0fc4 related to handling cached document requests.
-
- + added Message-ID: fields to MacHTTP return headers for HTTP/1.0 compliance.
-
- + changed Date: header field to be the date/time of the reply and not a file's
- creation date, in compliance with HTTP/1.0 spec.
-
- + fixed the logging problem with NetScape when connections are dropped too soon
- by the client.
-
- Version 2.0fc4 additions
- ----------------------
- +fixed bug with slow client requests and made request processing conform to HTTP
- new standard. This fix substantially reduced the memory requirements for handling
- POST requests as a side-effect.
-
- + zero out DNS cache when the no_dns property is toggled. The DNS cache was also
- increased to 20 entries.
-
- +changed MacHTTP application class code to 'capp'. This conforms to the
- AppleEvent convention.
-
- Version 2.0fc3 additions
- ----------------------
- + corrected problem with status report AppleEvent
-
- + created a background-only version of MacHTTP
-
- Version 2.0fc2 additions
- ----------------------
- + added support for %xx encodings in the Mac O/S file type and creator fields in
- suffix mappings in the config file. Now you can encode special characters (and
- spaces) that might appear in file types and creator codes in the MacHTTP.config
- file using the same %xx hex encodings as those used in URLs.
-
- + fixed the About box. It's no longer "under construction".
-
- + fixed bug with HEAD response for files not found. MacHTTP now returns the
- appropriate error response (file not found) if a HEAD request is made for a
- non-existent file.
-
- + MacHTTP no longer returns modified and creation date info for the "error" file.
- This prevents caching of error messages in place of the real file.
-
- + file not found error message is now returned correctly. MacHTTP was returning a
- 200 OK status code when files weren't found. It now returns the correct file not
- found error code, but still returns the contents of (or executes) the ERROR file
- specfied in the config file.
-
- + The message and status code returned to clients when the server is refusing
- connections has been fixed to return the 202 Accepted code to prevent improper
- caching of messages from MacHTTP in place of the real document.
-
- + referer information is logged to screen for missing file references. When a
- request is made for a non-existent file, MacHTTP prints the URL of the document
- containing the bad URL on the screen if the WWW client provides this information.
-
- + removed text translations for CGI results so they match ACGI behavior. CGI
- scripts and apps were still having their return results translated, which messed
- up the ability to return binary information. Please let me know if this has an
- adverse affect on CGI apps like AppleWebSearch.
-
- + added user-agent parameter for scripts and CGIs. All supported scripting
- interfaces now receive the "user-agent" parameter if a client supplies it. This
- is the name and version of the client being used. For CGI and application
- authors, the AppleEvent keyword value for the user-agent parameter is 'Agnt'.
-
- Version 2.0fc1 additions
- ----------------------
- This is a final candidate version of MacHTTP 2.0. This version contains the
- complete functionality of version 2.0, and all reported bugs are fixed. If no
- problems are found with this version, it will become 2.0 as soon as I fix the
- About box. New changes and features for this version include:
-
- + added support for the HEAD method. This is identical to GET except that no
- content is returned (only the header). Useful for robots, etc.
-
- + fixed abrupt connection drops for busy and refused connections. MacHTTP was
- dropping the connection too quickly when telling some clients that the server was
- busy or refusing connections. MacHTTP now treats busy and refused connections as
- regular connections, running them through the state machine. Appropriate HTTP
- status codes are returned for BUSY and SERVICE UNAVAILABLE now.
-
- + removed the HIDEWINDOW config file command. This function is performed by the
- menu option of the same name.
-
- + fixed premature connection drop logging problem. When clients terminated a
- transfer, MacHTTP wasn't logging the partial data transfer or the file access. It
- does now.
-
- + added an indicator for refused connections. If "Refuse Connections" is selected
- from the Option menu, a red "Refused" message appears in the status display.
-
- + added notifcation of memory errors when MacHTTP is in the background. If
- MacHTTP is running in the background, or as a background-only app, then it will
- use the Notification Manager to alert the user that a problem has cropped up.
-
- + MacHTTP now caches the last 10 DNS look-ups.
-
- Version 2.0b7 additions
- ---------------------
- + Added a memory status graph and changed low memory warning. The status graph
- shows the amount of free memory remaining (in white). Low memory warning shows up
- whenever MacHTTP doesn't have sufficient memory to complete an operation.
-
- + Added events for adding and deleting passwords. Add User and Delete User events
- allow you to manage passwords for realms from AppleScript. Uses for this might
- include allowing users to self-validate themselves after completing a
- questionaire, scripts that can add users to a discussion list managed by MacHTTP,
- bulk load of usernames from a text file, etc.
-
- + MacHTTP now gets a file's modification date from actual target of an alias, not
- the alias itself. This makes if-modified-since requests work correctly for all
- files and doesn't require that aliases be remade each time the original is
- modified.
-
- + Reduced max MAXUSERS to 46 to accomodate MacTCP's limit. This leaves 2 spare
- connections for other IP applications.
-
- + MacHTTP now saves its window location and size as well as the values of flags
- in the Options menu in the MacHTTP Settings file. These values are restored the
- next time the program starts. If you want to reset the window location and
- dimensions to the default values, hold down the mouse button while MacHTTP starts
- up.
-
- + Added Referer: argument to CGIs. The AppleEvent keyword 'refr' contains the
- value of the "Referer:" field from the HTTP header. This is the URL to the
- document that referenced the current page. The variable passed to SCRIPT files is
- "referer".
-
- Version 2.0b6 additions
- ---------------------
- + Fixed several bugs related to crashes in b5, mostly related to increased POST
- arg size.
-
- + Modified CGI logic to use System 7 temporary memory calls to help improve
- MacHTTP's low memory performance.
-
- + Post args are now set at 24K. 32K is too large for many clients and if the full
- 32k bytes are used, they are too large for AppleScript to compile SCRIPT files.
-
- + Removed the Max Free memory indicator to free up space for new info in the
- status area, as it never changed and was of little value.
-
- Version 2.0b5 additions
- ---------------------
- + Added support for 32k POST arguments. Normal GET requests are allowed to be as
- large as 4k now, while POST requests can be as large as 32k.
-
- + Enhanced low memory behavior. MacHTTP now reserves a small amount memory for
- "emergency" situations. If MacHTTP's free memory decreases below a critically low
- value, this memory is freed up and all new connections are refused. This allows
- the server to continue running, informing clients there is a problem. But,
- MacHTTP won't serve any more documents until the administrator intervenes.
-
- + Added a low memory error indicator. If any type of low memory situation occurs,
- MacHTTP
- will draw a big, red "M" in the status area. If you see this indicator, it means
- that MacHTTP ran out of memory at some point. If details aren't visible in the
- status message area, scroll the buffer backwards and check for more info.
-
- Version 2.0b4 additions
- ---------------------
- + fixed problem related to crashes when client sends empty From: tag. This should
- fix the last of the unexplained crashes.
- + modified response behavior for error and noaccess files. MacHTTP now correctly
- sends the defined error file whenever a URL cannot be found. The error file can
- now be a CGI (SCRIPT, ACGI, etc.) which will be executed when a requested file
- cannot be found. The requested URL will be passed to the script, allowing URL
- redirection to be done for missing files, etc.
-
- Version 2.0b3 additions
- ---------------------
- + fixed memory leak bug related to the mystery crashes since b13.
-
- Version 2.0b2 additions
- ---------------------
- + fixed HTML error returns for bad script executions. Clients now get a clue that
- a script failed to execute correctly.
- + removed modal warnings that caused MacHTTP to stop processing requests until OK
- was clicked. No more "Unable to create IP stream" modal dialogs.
- + fixed start-up bug that crashes the system when MacTCP isn't loaded
- successfully.
- + fixed range check bugs when setting property/config file values
- + added 503 Server too busy error code. Not very much client support for this
- yet, so you won't see any benefits with clients like NetScape until they add
- support.
-
- Version 2.0b1 additions
- ---------------------
- + Added additional parameters to CGIs and SCRIPTs: from_user, server_name,
- server_port,
- script_name, content_type. Variables available for use in SCRIPT, CGI, and
- ACGI files:
- -- http_search_args - stuff in the URL after a ?
- -- post_args - stuff in the URL after a $
- -- method - GET, POST, etc. Used to tell if post_args and content_type are valid
- -- client_address - IP address or domain name of remote client's host
- -- from_user - non-standard. e-mail address of remote user
- -- username - authenticated user name
- -- password - authenticated password
-
- The next 3 variables are useful from scripts that want to generate URLs on the
- fly that are self-referencing. You should be able to write "portable" scripts
- using this information, since you won't need to hard-code your host name, etc.
- into scripts anymore.
-
- -- server_name - name or IP address of this server
- -- server_port - TCP/IP port number being used by this server
- -- script_name - URL name of this script
-
- This variable is only valid when method = "POST"
- -- content_type - MIME content type of post_args
-
- + Added AppleEvent support for setting some config file variables remotely. You
- can now Get and Set the following MacHTTP application properties from
- AppleScript. See the MacHTTP "machttp_admin.acgi" sample script for examples of
- their use.
-
- Properties:
- dump_buf_size small integer -- Output buffer size for TCP/IP writes to
- clients. (256-10240)
- pig_delay small integer -- Number of ticks to run MacHTTP before
- relinquishing control to other apps (0-120)
- maxusers small integer -- Maximum number of simultaneous users. (3-1000)
- no_dns boolean -- Toggle for domain name resolution by MacHTTP
- (true=off/false=on)
- time_out small integer -- Timeout value for idle MacHTTP connections and
- AppleEvents in seconds (5-600)
- maxlistens small integer -- Maximum number of TCP/IP listens to queue up
- (3-50)
-
- For instance, the following would adjust the "pig_delay" property by 10 and show
- the result in the Script Editor's result window:
-
- tell application "MacHTTP 2.0b1"
- get pig_delay --"result" holds the value of pig_delay now
- set pig_delay to (result + 10)
- get pig_delay
- end tell
-
- Warning! If you access these properties, or any other MacHTTP AppleEvents from a
- script called from MacHTTP, it MUST be from an ACGI type script. Any other script
- type will cause MacHTTP to deadlock with your script until the AppleEvent times
- out.
-
- + fixed FREF resource and file type info for settings file. You should rebuild
- your desktop to get the new icon for the settings file.
-
- NOTE: Version notes for 1.3.1bx versions are contained in the Read Me (2)
- document. This document contains important info that should be read if this is
- your first 2.0x download.
-